package com.kingint.mbg.dto.department;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.kingint.mbg.bas.entity.BasRepairGoods;
import com.kingint.mbg.bas.entity.BasWarrantyItems;
import com.kingint.mbg.dto.MemberReturn;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 后端相关实体类
 */
@Data
public class DepartmentRepairBack implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "对应总单id")
    @TableField("work_id")
    private Integer workId;

    @ApiModelProperty(value = "保修物品（对应bas_warranty_items集合的josn）")
    @TableField("warranty_content")
    private String warrantyContent;

    @TableField(exist = false)
    private List<BasWarrantyItems> warrantyItems;

    @ApiModelProperty(value = "保修备注")
    @TableField("warranty_note")
    private String warrantyNote;

    @ApiModelProperty(value = "问题描述")
    @TableField("problem_description")
    private String problemDescription;

    @ApiModelProperty(value = "上传图片（相关的图片逗号拼接）")
    @TableField("img")
    private String img;

    @ApiModelProperty(value = "检查人员")
    @TableField("check_user_id")
    private Long checkUserId;

    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    private Date createTime;

    @ApiModelProperty(value = "故障信息")
    @TableField("fault_note")
    private String faultNote;

    @ApiModelProperty(value = "上传维修后的图片信息")
    @TableField("fault_img")
    private String faultImg;

    @ApiModelProperty(value = "维修耗材(对应bas_repair_goods集合的json)")
    @TableField("repair_goods")
    private String repairGoods;

    @TableField(exist = false)
    private List<BasRepairGoods> repairGoodsList;

    @ApiModelProperty(value = "维修意见")
    @TableField("maintain_note")
    private String maintainNote;

    @ApiModelProperty(value = "维修时间")
    @TableField("repair_time")
    private Date repairTime;



    @ApiModelProperty(value = "对应酒店id")
    @TableField(exist = false)
    private Integer hotelId;

    @ApiModelProperty(value = "对应房间表的房间id")
    @TableField(exist = false)
    private Integer roomId;

    @ApiModelProperty(value = "房间号（对应小度的devicePosName字段）")
    @TableField(exist = false)
    private String roomNum;
    /**
     * 提交人员名称
     */
    @TableField(exist = false)
    private String submitUserName;

    /**
     * 检查人名称
     */
    @TableField(exist = false)
    private String checkUserName;

    /**
     * 楼层id
     */
    @TableField(exist = false)
    private Integer floorId;

    /**
     * 楼层名称
     */
    @TableField(exist = false)
    private String floorName;


    @ApiModelProperty(value = "提交人员id,0，表示小度下发的客需,系统下发")
    @TableField(exist = false)
    private Long submitUserId;

    /**
     * 工单号
     */
    @TableField(exist = false)
    private String orderSn;

    @TableField(exist = false)
    private List<MemberReturn> memberList;
}
